package com.tools.s7.network.server;

import java.util.Map;

import io.reactivex.Observable;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.http.Body;
import retrofit2.http.HeaderMap;
import retrofit2.http.POST;
import retrofit2.http.QueryMap;
import retrofit2.http.Url;

public interface PostQueryServer {


    @POST
    Observable<ResponseBody> onPost(@Url String url,
                                             @QueryMap Map<String, String> parameters);

    @POST
    Observable<ResponseBody> onPost(@Url String url,
                                             @Body RequestBody parameters);


    @POST
    Observable<ResponseBody> onPost(@Url String url,
                                             @HeaderMap Map<String, String> headers,
                                             @QueryMap Map<String, String> parameters);

    @POST
    Observable<ResponseBody> onPost(@Url String url,
                                             @HeaderMap Map<String, String> headers,
                                             @Body RequestBody parameters);

}
